home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / R-Shows / (c)sdg.d64 / graphic tut-2.64 (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  6KB  |  165 lines

  1. 0 REM" P.J.PONZO*83*WATERLOO/ONTARIO
  2. 30 [143]" >GRAPHICS-2
  3. 40 REM" [184][184][184][184][184][184][184][184][184][184][184][184][184][184]
  4. 100 [151]55,0:[151]56,7[172]16[170]13:[156]
  5. 110 [151]53281,15:[151]53280,0:[141]5000:[151]53272,21
  6. 120 [153]"LOADSTOPWE ILLUSTRATE SOME BITMAP MODE"
  7. 121 [153]"GRAPHS 'N' SUCH.."
  8. 122 [153]"THE MACHINE LANGUAGE ROUTINE BEING"
  9. 123 [153]"LOADED WILL PLOT A POINT OR LINE."
  10. 125 [151]53248[170]22,200:[141]400
  11. 130 [133]"LOADCLEAR GRAPHICS AREA   YCMDCMDCMD";A$:[139]A$[178]"N"[167]150
  12. 140 [151]174,0:[151]175,32:[151]176,0:[151]177,32:[158]ML:[143] CLEAR $2000-
  13. 150 [151]174,0:[151]175,4:[151]176,224:[151]177,4:[158]ML:[143] SET COLOURS IN $0400-
  14. 160 [143] POINT LOCATIONS
  15. 170 X0[178]32000:Y0[178]32001
  16. 180 X1[178]32002:Y1[178]32003
  17. 190 X[178]32005:Y[178]32007
  18. 200 [141]350:[143] BITMAP MODE
  19. 210 [143]*****************************
  20. 220 [143]*   POKE X0,Y0,X1 & Y1      *
  21. 221 [143]*   SYS LINE DRAWS LINE     *
  22. 222 [143]*   FROM (X0,Y0) TO (X1,Y1) *
  23. 230 [143]*****************************
  24. 240 [129]I[178]0[164]255[169]2
  25. 250 C[178][190]([255][172]I[173]63):S[178][191]([255][172]I[173]127)
  26. 260 CC[178]C[172]C:SS[178]S[172]S:[151]X0,I:[151]Y0,120[172]CC
  27. 270 [151]X1,127[170]127[172]C:[151]Y1,200[171]80[172]CC
  28. 280 [158] LINE:[130]
  29. 290 [143]********************************
  30. 300 [129]CL[178]0[164]15:[151]174,0:[151]175,4:[151]176,16[172]CL:[151]177,4:[158]ML:[143] COLOURS
  31. 310 [129]T[178]1[164]100:[130]:[130]
  32. 330 [129]I[178]1[164]2000:[130]
  33. 340 [153]"LOAD":[141]360:[137]1000
  34. 350 [151]53248[170]17,59:[151]53248[170]24,25:[142]:[143] BITMAP MODE
  35. 360 [129]T[178]1[164]500:[130]
  36. 370 [151]53248[170]17,27:[151]53248[170]24,21:[143] NORMAL MODE
  37. 380 [142]
  38. 400 ML[178]7[172]4096[170]15[172]256[170]4[172]16[170]2
  39. 401 [139][194](ML)[178]165[167] 500
  40. 402 [129]I[178]0[164]16:[135]X:[151]ML[170]I,X:[130]
  41. 410 [131] 165,176,166,177,160,0,145,174,200,208,251,230,175,202,208,246,96
  42. 500 LINE[178]7[172]4096[170]14[172]256
  43. 501 PLOT[178]7[172]4096[170]14[172]256[170]11[172]16[170]11
  44. 502 [139][194](LINE)[178]169[167] [142]
  45. 510 [129]I[178]0[164]321:[135]X:[151]LINE[170]I,X:[153]""I:[130]:[142]
  46. 1000 :
  47. 1001 [143] POKE X,Y
  48. 1002 [143] SYS PLOT TURNS ON
  49. 1003 [143] POINT AT (X,Y)
  50. 1004 :
  51. 1005 [153]"LOADHIT A KEY TO DISCONTINUE PLOT..":[129]T[178]1[164]1500:[130]
  52. 1006 [141]350:[143] BITMAP MODE
  53. 1007 [151]174,0:[151]175,32:[151]176,0:[151]177,32:[158]ML:[143] CLEAR $2000-
  54. 1008 [151]174,0:[151]175,4:[151]176,1:[151]177,4:[158]ML:[143] SET COLOURS IN $0400-
  55. 1010 T0[178]0:T1[178]1000:SC[178]2[172][255][173]T1:[143] MIN,MAX AND SCALE FOR T
  56. 1020 X0[178]0:X1[178]255:Y0[178]0:Y1[178]200:[143] MIN,MAX FOR X,Y
  57. 1030 A[178](X1[170]X0)[173]2:B[178](X1[171]X0)[173]2:C[178](Y1[170]Y0)[173]2:D[178](Y1[171]Y0)[173]2:P[178]3:Q[178]5:[143] PARAMETERS
  58. 1040 [129]T[178]T0 [164] T1:TT[178]T[172]SC
  59. 1050 XVLUE[178]A[170]B[172][191](P[172]TT)
  60. 1060 YVLUE[178]C[170]D[172][190](Q[172]TT)
  61. 1070 [151]X,XVLUE:[151]Y,YVLUE
  62. 1080 [158] PLOT
  63. 1090 [161]A$:[139]A$[178]""[167][130]T
  64. 1095 :
  65. 1100 [141]360:[143] NORMAL MODE
  66. 1200 [133]"LOADGOT A JOYSTICK";A$:[139][200](A$,1)[178]"Y"[167]1215
  67. 1201 [153]"LOADUSE THE 4 KEYS IN THE UPPER LEFT OF"
  68. 1202 [153]"OF THE KEYBOARD TO MOVE THE PIXELWAIT."
  69. 1203 [153]"  1  WAIT FOR UP    (null)"
  70. 1204 [153]"          FREFRE    +"
  71. 1205 [153]"  2  WAIT FOR RIGHT + AND"
  72. 1206 [153]"          FREFREFREFREFRE +"
  73. 1207 [153]"  _  WAIT FOR DOWN  + COMBINATIONS
  74. 1208 PRINT"          [184][184][184][184]  [170]"
  75. 1209 PRINT" CTRL[146] FOR LEFT  [186]"
  76. 1210 PRINT"          [184][184][184][184]"
  77. 1211 PRINT"AND SPACE[146] TO QUIT
  78. 1212 [137]1250
  79. 1213 [137]1250
  80. 1214 [153]"             FREFREFREFRE"
  81. 1215 [153]"LOADGOODWAIT!"
  82. 1220 [153]"STICK IT IN PORT 1 AND MOVE THE"
  83. 1230 [153]"WEE PIXEL AROUND."
  84. 1240 [153]"HIT THE FIRE BUTTONWAIT TO QUIT"
  85. 1250 [153]"HIT A KEY TO BEGIN.."
  86. 1260 [161]A$:[139]A$[178]""[167]1260
  87. 1270 XX[178]100:YY[178]100
  88. 1280 [151]174,0:[151]175,32:[151]176,0:[151]177,32:[158]ML:[143] CLEAR $2000-
  89. 1290 [153]"LOAD":[141]350
  90. 1300 [151]174,0:[151]175,4:[151]176,1:[151]177,4:[158]ML:[143] SET COLOURS IN $0400-
  91. 2000 JX(0)[178]0:JY(0)[178]0
  92. 2010 JX(1)[178]0:JY(1)[178][171]1
  93. 2020 JX(2)[178]0:JY(2)[178]1
  94. 2030 JX(3)[178]0:JY(3)[178]0
  95. 2040 JX(4)[178][171]1:JY(4)[178]0
  96. 2050 JX(5)[178][171]1:JY(5)[178][171]1
  97. 2060 JX(6)[178][171]1:JY(6)[178]1
  98. 2070 JX(7)[178]0:JY(7)[178]0
  99. 2080 JX(8)[178]1:JY(8)[178]0
  100. 2090 JX(9)[178]1:JY(9)[178][171]1
  101. 2100 JX(10)[178]1:JY(10)[178]1
  102. 2110 JY[178]([168] [194](56321))[175]15:[139]JY[177]10[167]2110
  103. 2150 FR[178][171](([194](56321)[175]16)[178]0)
  104. 2160 NX[178]XX[170]JX(JY):NY[178]YY[170]JY(JY)
  105. 2170 [139]NX[177]0[175]NX[179]256[167] XX[178]NX
  106. 2180 [139]NY[177]0[175]NY[179]200[167] YY[178]NY
  107. 2190 [151]X,XX:[151]Y,YY:[158] PLOT
  108. 2200 [139] FR[178]0 [167] 2110
  109. 2210 [153]"LOAD":[129]I[178]1[164]100:[161]A$:[130]:[141]360:[155]200[171]290
  110. 5000 [153]"LOADSTOP              GRAPHICS-2                "
  111. 5001 [153]"WE'LL MAKE UP A 'NEW' CHARACTER.":[141]63000
  112. 5015 [153]"LOADTURN OFF INTERRUPTS..."
  113. 5020 [153]"POKE 56334,PEEK(56334)AND254
  114. 5025 PRINT"SWITCH OUT THE CIA CHIPS
  115. 5026 [153]"(WHICH HANDLE INTERRUPTS!)
  116. 5027 PRINT"THEREBY 'EXPOSING' THE CHAR ROM!"
  117. 5030 PRINT"POKE 1,PEEK(1)AND251
  118. 5035 [153]"TRANSFER SOME STANDARD CHARACTERS
  119. 5036 PRINT"FROM 53248 TO 12288."
  120. 5040 PRINT"FORI=0TO511                   "
  121. 5041 PRINT"POKE12288+I,PEEK(53248+I):NEXT"
  122. 5045 PRINT"SWITCH IN I/0 AGAIN"
  123. 5050 PRINT"POKE 1,PEEK(1)OR4
  124. 5055 [153]"ENABLE INTERRUPTS AGAIN
  125. 5060 PRINT"POKE 56334,PEEK(56334)OR1
  126. 5070 [151]56334,0:[151]1,51:AA[178]12288:BB[178]53248
  127. 5080 [129]II[178]0[164]511:[151]AA[170]II,[194](BB[170]II):[130]:[151]1,55:[151]56334,1:[141]63000
  128. 5090 [153]"LOADNOW TELL THE VIDEO CHIP WHERE THE"
  129. 5100 [153]"CHARACTER SET IS:"
  130. 5110 [153]"POKE 53272,(PEEK(53272)AND240)OR12":[151]53272,29
  131. 5120 [153]"NOW LET'S CHANGE A FEW CHARACTERS!!":[141]63000
  132. 5130 [153]"LOADPICK A CHARACTER ('Q'=QUIT":[133]C$:[139]C$[178]"Q"[167][142]
  133. 5140 [153]""C$:C[178][194](1024):MEM[178]12288[170]8[172]C
  134. 5150 [153]"CURRENT 8 BYTES FOR "C$":"
  135. 5160 [129]II[178]0[164]7:M[178]MEM[170]II:[141]5200
  136. 5170 [153]X$" ="[194](M):[130]
  137. 5180 [153]"8 NEW BYTES PLEASE":[129]II[178]0[164]7:[133] BB$:BB[178][197](BB$)
  138. 5190 [151]MEM[170]II,BB:[130]:[141]63000:[137]5130
  139. 5200 X[178][194](M):X$[178]"":[129]JJ[178]7[164]0[169][171]1:F[178]2[174]JJ
  140. 5210 Y%[178]X[173]F:Y$[178][202]([196](Y%),2)
  141. 5220 X$[178]X$[170]Y$:X[178]X[171]F[172]Y%:[130]:[142]
  142. 10000 [131]169,0,141,4,125,141,6,125,141,12,125,162,255,173,2,125,205
  143. 10001 [131]0,125,176,13,173,0,125,56,237,2,125,141,8,125,76,43,126
  144. 10002 [131]237,0,125,141,8,125,238,12,125,173,3,125,205,1,125,176,13
  145. 10003 [131]173,1,125,56,237,3,125,141,9,125,76,76,126,237,1,125,141
  146. 10004 [131]9,125,238,12,125,238,12,125,173,0,125,141,5,125,173,1,125
  147. 10005 [131]141,7,125,169,1,44,12,125,208,21,173,4,125,56,237,8,125
  148. 10006 [131]141,4,125,173,5,125,233,0,141,5,125,76,134,126,173,4,125
  149. 10007 [131]24,109,8,125,141,4,125,173,5,125,105,0,141,5,125,169,2
  150. 10008 [131]44,12,125,208,21,173,6,125,56,237,9,125,141,6,125,173,7
  151. 10009 [131]125,233,0,141,7,125,76,180,126,173,6,125,24,109,9,125,141
  152. 10010 [131]6,125,173,7,125,105,0,141,7,125,32,187,126,202,208,158,96
  153. 10011 [131]169,32,133,177,169,0,133,176,173,5,125,41,248,32,24,127,173
  154. 10012 [131]7,125,41,7,32,24,127,173,7,125,41,248,141,10,125,160,5
  155. 10013 [131]32,36,127,173,7,125,41,248,141,10,125,160,3,32,36,127,165
  156. 10014 [131]177,201,64,176,36,173,5,125,41,7,141,11,125,169,7,56,237
  157. 10015 [131]11,125,168,169,1,136,48,4,10,76,4,127,141,11,125,160,0
  158. 10016 [131]177,176,13,11,125,145,176,96,24,101,176,133,176,165,177,105,0
  159. 10017 [131]133,177,96,169,0,141,11,125,14,10,125,46,11,125,136,208,247
  160. 10018 [131]165,176,24,109,10,125,133,176,165,177,109,11,125,133,177,96
  161. 63000 [153]"HIT 'RETURN' TO CONTINUE.."
  162. 63001 [161]A$:[139]A$[179][177]""[167]63001
  163. 63002 [161]A$:[139]A$[178]""[167]63002
  164. 63003 [142]
  165.